Mapped Types Modifiers
揺れがある
「Mapped Type Modifiers」とか ref 「Mapping Modifiers」とか ref readonlyや?のことをmodifier(修飾子)と呼んでて、
「Mapped Types Modifiers」の様に呼んだりする
以下の様に、constraint typeにkeyofが付いている時に使える
[]の中でkeyofを付けている
code:ts
extendsの中で、keyofの制約がある
code:ts
type Pick<T, K extends keyof T> = { P in K: TP; } readonlyや?を付ける
code:ts
type Partial<T> = {
};
こうなる
code:ts
type A = Partial<{ a: number; b: number }>;
// 以下と同じ
// type A = {
// a?: number | undefined;
// b?: number | undefined;
// };
ただの[..]?じゃなくて、[..]+?とも書けるが、全く同じ意味になる
?を取り除く
-を付ける
code:ts
type Required<T> = {
};
こうなる
code:ts
type A = Required<{ a?: number; b?: number | undefined }>;
// 以下と同じ
// type A = { a: number; b: number; };
readonlyを取り除く
-を付ける
code:ts
type Mutable<T> = {
};
参考